package ZengJiHong1.Test5;

/**
 * @ClassName test5
 * @Author 16799
 * @Date 2025/8/16 16:29
 * @Version 1.0
 * @Description TODO
 *
 * 给你一个按照非递减顺序排列的整数数组 `nums`，和一个目标值 `target`。请你找出给定目标值在数组中的开始位置和结束位置。
 * 如果数组中不存在目标值 `target`，返回 `[-1, -1]`。
 * 注意：必须确保程序的时间复杂度是o(log2n)，否则不给分数
 ***具体功能点的要求如下：**
 * 数组 nums = [5,7,7,8,8,10], target = 8
 * 得到结果是：[3,4]
 *数组：nums = [5,7,7,8,8,10], target = 6
 * 得到结果是：[-1,-1]
 * 数组：nums = [], target = 0
 * 得到结果是：[-1,-1]
 *  时间：2025年8月16日16:29:37
 *      0分，写不来，吵死了
 **/
public class test5 {
    public static void main(String[] args) {
    /*    问题：该怎么记录在数组中最后一次出现该元素的位置
        int[] nums1 = {5,7,7,8,8,10};
        int target = 8;
        int begin =0;
        int last =0;
        int index = 0;  //第二次出现目标元素后，就会自动+1，begin+index就是last的值
        //搞个标志，为true则说明数组中存在目标元素
        Boolean flag = false;
        for (int i = 0; i < nums1.length; i++) {
            if (nums1[i] == target){
                begin = i;
                last++;
                flag = true;
            }
        }
        //目标元素有可能在数组第一位：[0]，那就再额外判断一下数组第一位是否和目标元素相等
        if (nums1[0]==target&&begin==0){
            System.out.println("第一次出现和最后一次出现的位置分别是： "+begin+" "+last);
        }
        last+=begin;
        System.out.println("第一次出现和最后一次出现的位置分别是： "+begin+" "+last);
        */

    }
}
